package com.qujia.station.service;

import com.qujia.station.domain.PayWay;
import com.qujia.station.domain.PayWayStationBetween;

import java.util.List;

/**
 * 油品信息Service接口
 * 
 * @author qujia
 * @date 2020-12-08
 */
public interface IPayStationBetweenService
{
    /**
     * 查询支付方式和油站的中间报表信息
     *
     * @param payStationId 中间表id信息
     * @return 油罐信息
     */
    public PayWayStationBetween selectPayWayStationBetweenById(Long payStationId);

    /**
     * 查询中间表信息信息列表
     *
     * @param payWayStationBetween 中间表信息信息
     * @return 中间表信息集合
     */
    public List<PayWayStationBetween> selectPayWayStationBetweenList(PayWayStationBetween payWayStationBetween);

    /**
     * 新增中间表信息
     *
     * @param payWayStationBetween 中间表信息
     * @return 结果
     */
    public int insertPayWayStationBetween(PayWayStationBetween payWayStationBetween);

    /**
     * 修改中间表信息
     *
     * @param payWayStationBetween 中间表信息
     * @return 结果
     */
    public int updatePayWayStationBetween(PayWayStationBetween payWayStationBetween);

    /**
     * 批量新增关联支付方式
     * *
     * @param payWayStationBetweenList 中间表信息
     * @return 结果
     */
    public int addPayWayStationBetweenList(List<PayWayStationBetween> payWayStationBetweenList)  throws Exception;

    /**
     * 批量新增关联支付方式
     * *
     * @param payWayStationBetweenList 中间表信息
     * @return 结果
     */
    public int insertAutoPayWayOver(List<PayWayStationBetween> payWayStationBetweenList)  throws Exception;



    /**
     * 通过定时器，新增不同的支付方式
     * *
     * @param payWayStationBetweenList   当前支付方式的集合，要删除的stationId
     * @return 结果
     */
    public int timingAddPayWayStationBetweenList(List<PayWayStationBetween> payWayStationBetweenList,Long stationId)  throws Exception;

    /**
     * 删除中间表信息
     *
     * @param payStationId 中间表ID
     * @return 结果
     */
    public int deletePayWayStationBetweenById(Long payStationId);

    /**
     * 删除中间表信息
     *
     * @param payStationId 中间表ID
     * @return 结果
     */
    public int deleteAutoPayWayOver(Long stationId);

    /**
     * 批量删除中间表信息
     *
     * @param payStationIds 需要删除的数据ID
     * @return 结果
     */
    public int deletePayWayStationBetweenByIds(Long[] payStationIds);

    /**
     * 删除中间表信息
     *
     * @param stationId 中间表ID
     * @return 结果
     */
    public int deletePayWayStationBetweenBySationId(Long stationId);
}
